
// 不定义构造方法则会有一个隐式的无参数构造方法
class User{
  String name;
  int age;

  @override
  String toString() {
    return 'User:{name: $name, age: $age}';
  }
}

class Student{
  String name;
  int age;

  // 定义构造方法
  Student(this.name, this.age);
  
  // 构造方法不能有可选参数
  //Student({this.name, this.age});


  @override
  String toString() {
    return 'Student:{name: $name, age: $age}';
  }
}



void main(){
  var u = User();
  u.name = 'Dart';
  u.age = 1;
  print(u);


  var s = Student('小明',18);
  print(s);



}